{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Slanted Gratings\n",
    "A slanted grating is kind of weird because you cannot do a Fourier decomposition along the x (or transverse) direction. The grating vector is now in some linear combination of x and z., which means something has to change, but not sure what.\n",
    "\n",
    "Preliminarily, we can consider the simpliest slanted granting:\n",
    "\\begin{equation}\n",
    "    \\epsilon(x,z) = \\epsilon_0+\\Delta\\epsilon \\cos(K(x \\cos(\\phi) + z\\sin(\\phi)))\n",
    "\\end{equation}\n",
    "which would require no Fourier decomposition(at least along the grating vector direction).\n",
    "\n",
    "The question then is how do we consider the plane waves. We could still write incident waves in the Cartesian basis, but what happens when they hit the grating region?\n",
    "\n",
    "One thought is, in the grating region:\n",
    "\\begin{equation}\n",
    "    E_x = \\sum_{i}U_{xi}\\exp[j(k_{xi}x+ k_{zi}z + iK_y y]\n",
    "\\end{equation}\n",
    "Ordinarily, the decomposition would just contain the x and z components (the transverse components), but now we need to include the K_y component of the grating vector? This thought appears to be supported by the Moharam paper.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "\\begin{equation}\n",
    "    b_{rs} = \\begin{bmatrix}\n",
    "        2\n",
    "    \\end{bmatrix}\n",
    "\\end{equation}"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.7071067811865475\n"
     ]
    }
   ],
   "source": [
    "x = np.linspace(-1,1,1000)\n",
    "z = np.linspace(-0.2, 0.2, 1000)\n",
    "K =20\n",
    "phi = 45*np.pi/180;\n",
    "print(np.sin(phi))\n",
    "[X,Z] = np.meshgrid(x,z);\n",
    "eps = 2+1*np.cos(K*(X*np.cos(phi)+Z*np.sin(phi)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure();\n",
    "plt.pcolormesh(X,Z,eps);\n",
    "plt.clim(0,2.2)\n",
    "plt.colorbar();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## From unslanted to slanted\n",
    "Actually going from unslanted to slanted RCWA is not difficult. In fact, all we need is to add an additional diagonal matrix to our equations:\n",
    "\\begin{equation}\n",
    "\\tilde K_z = [-mK_z, \\cdots, mK_z]\n",
    "\\end{equation}"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
